Skip to content

Fix WASM release tests and publish v0.1.28 - #8

Merged
npiesco merged 5 commits into
mainfrom
agent/release-v0.1.28
Jul 27, 2026
Merged

Fix WASM release tests and publish v0.1.28#8
npiesco merged 5 commits into
mainfrom
agent/release-v0.1.28

Conversation

@npiesco

@npiesco npiesco commented Jul 27, 2026

Copy link
Copy Markdown
Owner

Summary

  • replace stale IndexedDB test metadata with complete BlockMetadataPersist records carrying real checksums
  • preserve caller-supplied metadata versions and omit the commit-marker write in crash-simulation persistence, allowing recovery to detect interrupted commits
  • record start, success, failure, duration, and block counts for the public asynchronous WASM sync path
  • run the exact release-mode Chrome WASM suite in regular CI so release-only compile/runtime failures cannot recur
  • bump Cargo, npm, generated package metadata, and the mobile lockfile to 0.1.28

Root causes

The v0.1.27 Release workflow compiled a broader WASM test matrix than regular CI. Four test call sites still passed the old (block_id, version) scalar form after persist_to_indexeddb_event_based moved to (block_id, BlockMetadataPersist).

Once that matrix ran in regular CI, its crash test exposed that the marker-less simulation helper internally forced metadata versions to zero and wrote a zero commit marker. Recovery therefore saw no version ahead of the marker. The corrected path retains retries while preserving the supplied next-version metadata and intentionally omitting the marker write.

The same suite also showed that the public asynchronous WASM sync() path bypassed observability bookkeeping, leaving sync_count at zero after a successful durable sync. It now records sync start, success/failure, duration, and block count.

Release recovery

crates.io 0.1.27 was published before its WASM job failed; npm and the GitHub Release were skipped. This PR does not rewrite or move v0.1.27. Exact merged main will be tagged v0.1.28 so crates.io, npm, and GitHub Release align on the corrected release.

Validation

CI run 30240107197 passed all six jobs:

  • formatting and clippy
  • native Rust tests
  • tracked version consistency
  • complete release-mode WASM tests in headless Chrome
  • Hybrid browser storage and benchmark Playwright coverage
  • production PWA storage Playwright coverage

@npiesco
npiesco merged commit 1113358 into main Jul 27, 2026
6 checks passed
@npiesco
npiesco deleted the agent/release-v0.1.28 branch July 27, 2026 06:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant